package com.e3.basdoc.region.client;

import java.util.List;

import com.e3.basdoc.region.model.RegionModel;
import com.e3.basdoc.region.model.RegionQC;
import com.extjs.gxt.ui.client.data.PagingLoadConfig;
import com.extjs.gxt.ui.client.data.PagingLoadResult;
import com.google.gwt.user.client.rpc.AsyncCallback;

/**
 * Description: <br>
 * 
 * @author: <a href="mailto:senton1101@126.com">TianXiangdong</a> 2010-8-6
 */
public interface RegionRPCServiceAsync {

	void deleteRegions(List<RegionModel> regionModels, AsyncCallback<Void> callback);

	void getRegionByCode(String code, AsyncCallback<RegionModel> callback);

	void getRegionById(String id, AsyncCallback<RegionModel> callback);

	void getRegionChildren(RegionModel regionModel, AsyncCallback<List<RegionModel>> callback);

	void getRegionsByCondition(RegionQC regionQC, AsyncCallback<List<RegionModel>> callback);

	void modifyRegion(RegionModel regionModel, AsyncCallback<RegionModel> callback);

	void newRegion(RegionModel regionModel, AsyncCallback<RegionModel> callback);

	void getPagingRegions(PagingLoadConfig config,AsyncCallback<PagingLoadResult<RegionModel>> callback);

}
